5 POKE53281,1:POKE53280,1:PRINT"[144][147]":PRINTTAB(15)"DM MASTER" 7 PRINTTAB(12)"BY PATRICK GROTE" 10 BEGIN=54272:FORCLEAR=BEGTOBEGIN+24:POKECLEAR,0:NEXT 20 POKEBE+5,85:POKEBE+6,85:POKEBE+12,85:POKEBE+13,85 30 POKEBE+24,15 40 POKEBE+4,33:POKEBE+11,17 50 FORX=1TO6:READH1,L1,H2,L2:POKEBE+1,H1:POKEBE,L1:POKEBE+8,H2:POKEBE+7,L2 60 IFH1=50THENFORT=1TO200:NEXT 70 FORT=1TO100:NEXT 80 DATA25,30,18,209,33,135,25,30,42,62,31,165,50,60,37,162,42,62,31,165,50,60 90 DATA37,162 100 NEXTX 110 BEGIN=54272:FORCLEAR=BEGTOBEGIN+24:POKECLEAR,0:NEXT 115 FORI=1TO1500:NEXT 120 POKE 53281,0:POKE 53280,0:PRINT"":REM AUTHOR PATRICK GROTE FOR C-64 130 DEF FNA(X)=INT(RND(1)*X)+1 140 POKE 36879,8:P=4:GOTO 430:REM START 150 IF CH=1THENTY$="[153]FIGHTER[159][146]" 160 IF CH=2THENTY$="[154]PALADIN[159][146]" 170 IF CH=3THENTY$="[155]RANGER[159][146]" 180 IF CH=4THENTY$="CLERIC[159][146]" 190 IF CH=5THENTY$="[156]MAGIC-USER[159][146]" 200 IF CH=6THENTY$="THIEF[159][146]" 210 IF CH=7THENTY$="[158]MONK[159][146]" 220 IF RA=1THENRA$="HUMAN[159]" 230 IF RA=2THENRA$="[153]HALF-ELVEN[159]" 240 IF RA=3THENRA$="[156]GNOME[159]" 250 IF RA=4THENRA$="[154]DWARVEN[159]" 260 IF RA=5THENRA$="ELVEN[159]" 270 IF RA=6THENRA$="[155]HALFLING[159]" 280 IF RA=7THENRA$="[158]HALF-ORC[159]" 290 RETURN 300 OPEN P,4 310 PRINT#P,N$,RA$,TY$,"LEVEL"LE 320 IFTY<4ANDSS>0THENPRINT#P,"STR-"S;SS:GOTO 340 330 PRINT#P,"*****STRENGTH-"S 340 PRINT#P,"*****INTELIGENCE-"I 350 PRINT#P,"*****WISDOM-"W 360 PRINT#P,"*****DEXTERITY-"D 370 PRINT#P,"*****CONSTITUTION-"C 380 PRINT#P,"*****CHARISMA-"CR:PRINT#P 390 IFCH=1ORCH=2THENPRINT#P,"WEAPONS ":PRINT#4,W$,Y$ 400 PRINT#P,"CONSTITUTION BONUS-"CB:PRINT#P 410 PRINT#P,"HIT POINTS-"HP:PRINT#P 420 CLOSE P:GOTO 1660 430 PRINT"[147][159]CHARACTER TYPE[158]":REM*CHARMENU 440 PRINT" 1 FIGHTER" 450 PRINT" 2 PALADIN" 460 PRINT" 3 RANGER" 470 PRINT" 4 CLERIC" 480 PRINT" 5 MAGIC-USER" 490 PRINT" 6 THIEF" 500 PRINT" 7 MONK" 510 PRINT"[159]SELECT" 520 GET H$:IF H$=""THEN520 530 IF H$>"7"OR H$<"1"THEN430 540 IF H$="7"OR H$="2"THEN RA=1:GOTO 680 550 CH=VAL(H$) 560 PRINT"[147]CHARACTER RACE[158]" 570 PRINT" 1 HUMAN" 580 PRINT" 2 HALF-ELVEN" 590 PRINT" 3 GNOME" 600 PRINT" 4 DWARF" 610 PRINT" 5 ELF" 620 PRINT" 6 HALFLING" 630 PRINT" 7 HALF-ORC" 640 PRINT"[159]SELECT" 650 GET A$:IF A$=""THEN650 660 IF A$>"7"OR A$<"1"THEN560 670 RA=VAL(A$) 680 CH=VAL(H$):REM LEVEL 690 INPUT"NAME";N$ 700 PRINT"LEVEL[158]" 710 INPUT "[159]SELECT";LE 720 IF LE<1THENLE=1 730 GOSUB 150 740 PRINT"[147][158]PLEASE WAIT FOR YOUR" 750 PRINT"";RA$;"[144] ";TY$;" TO BE ROLLED" 760 REM 770 GOSUB 840:S=N 780 GOSUB 840:D=N 790 GOSUB 840:C=N 800 GOSUB 840:W=N 810 GOSUB 840:I=N 820 GOSUB 840:CR=N 830 ONCHGOTO 950,1000,1080,1150,1190,1240,1280 840 REM RND#GEN 850 XX=INT(RND(1)*6)+1 860 YY=INT(RND(1)*6)+1 870 ZZ=INT(RND(1)*6)+1 880 N=XX+YY+ZZ 890 XX=0:YY=0:ZZ=0 900 RETURN 910 IFS<18THEN RETURN 920 S=18:SS=INT(RND(1)*100)+1 930 IFSS>99THEN SS=00 940 RETURN 950 REM*FIGHTER 960 X=10:IFS<15THENGOTO 770 970 IFC<7THEN GOTO 790 980 IFRA>3 THENGOSUB 1340 990 GOSUB 910:GOTO 1500 1000 REM PALADIN 1010 X=10:IFS<12THEN 770 1020 IFC<=13THEN 790 1030 IFW<13THEN 800 1040 IFI<9THEN GOTO 810 1050 IFCR<17THENGOTO 820 1060 GOSUB 910 1070 GOTO 1500 1080 REM RANGER 1090 X=8:IFS<13THEN 770 1100 IFC<14THEN 790 1110 IFW<14THEN 800 1120 IFI<13THEN 810 1130 IFRA>3 THEN GOSUB 1340 1140 GOTO 1500 1150 REM CLERIC 1160 X=8:IFW<14THEN GOTO 800 1170 IFRA>2THEN GOSUB 1340 1180 GOTO 1500 1190 REM MAGIC USER 1200 X=5:IFI<14THEN 810 1210 IFD<10THEN 780 1220 IFRA>3THEN GOSUB 1340 1230 GOTO 1500 1240 REM THIEF 1250 X=6:IFD<14THEN 780 1260 IFRA>2THEN GOSUB 1340 1270 GOTO 1500 1280 REM MONK 1290 X=5:IFS<16 THEN 760 1300 IFC<12THEN 790 1310 IFD<15THEN 780 1320 IFW<15 THEN 800 1330 GOTO 1500 1340 REM RACE MODS 1350 ON RAGOTO 120,120,1450,1360,1400,1430,1460 1360 C=C+2:IFC>18THENC=18:REM DWARF 1370 CR=CR-1:IFCR<3 THENCR=3 1380 IFC<15THENC=C+2:IFS<=15THENS=S+2 1390 RETURN 1400 D=D+1:IFD>18THEND=18:REM ELF 1410 C=C-1:IFC<3THENC=3 1420 RETURN 1430 S=S-1:IFS<1THENS=3:REM HALFLING 1440 D=D+2:IFD>18THEND=18 1450 RETURN 1460 RETURN 1470 C=C+1:IFC>18THENC=18 1480 CR=CR-2:IFCR<3THENCR=3 1490 RETURN 1500 GOSUB 1720:PRINT"[147][159]FINISHED CHARACTER[158]"SPC(05)" ";N$ 1510 IFS<18ORCH>3THEN PRINT"STRENGTH...."S:GOTO 1530 1520 PRINT"STRENGTH...."S;:PRINT"[157]";SS 1530 PRINT"INELIGENCE.."I 1540 PRINT"WISDOM......"W 1550 PRINT"DEXTERITY..."D 1560 PRINT"CONSTITUTION"C 1570 PRINT"CHARISMA...."CR 1580 PRINT"" 1590 PRINTSPC(1)RA$;:PRINT" ";:PRINTTY$ 1600 PRINT"[159]LEVEL:"SPC(08)LE 1610 PRINT"[156]HIT POINTS: "HP 1620 IFCH=3THENPRINT"CONS BONUS: "(CB*LE); 1630 IFCH=3THEN PRINT(CB*(LE+1)):GOTO 1650 1640 PRINT"CONS BONUS: "(CB*LE) 1650 PRINT"N[158]EW/A[158]GAIN/P[158]RINT/W[158]EAPONS"; 1660 GET A$:IFA$=""THEN 1660 1670 IFA$="N"THEN RUN 1680 IFA$="A"THEN730 1690 IFA$="P"THEN 300 1700 IFA$="W"THEN 1910 1710 GOTO 1660 1720 HP=0:CB=0 1730 IFCH>3THEN 1790 1740 IF C=15THENCB=1 1750 IF C=16THENCB=2 1760 IF C=17THENCB=3 1770 IF C=18THENCB=4 1780 GOTO 1810 1790 IFC=15THENCB=1 1800 IFC>15THEN CB=3 1810 IFCH=3ANDLE=1THENHP=16+CB+CB:RETURN 1820 IFLE=1THENHP=X+CB:RETURN 1830 FORAA=1TO(LE-1) 1840 HP=HP+FNA(X) 1850 NEXT 1860 HP=HP+X 1870 HP=HP+(CB*LE) 1880 IFCH=3THEN HP=HP+X+CB:REM RANGER 2D8 1890 RETURN 1900 IFS>=17THENW$="HOLY AVENGER":RETURN 1910 IFCH<>1ORCH<>2THENPRINT"[147]YOU DO NOT START WITH WEAPONS!":FORI=1TO1000:NEXT 1920 GOTO 1500 1930 PRINT"[147]TABLE FOR FIGHTERS WEAPONS:" 1940 PRINT"1. LONG SWORD" 1950 PRINT"[159]2. BROAD SWORD" 1960 PRINT"3. SHORT SWORD" 1970 PRINT"[156]4. BOW AND 50 ARROWS" 1980 PRINT"5. SPEAR" 1990 PRINT"[158]6. JAVILIEN" 2000 PRINT"[153]7. MACE" 2010 PRINT"[154]8. HAMMER" 2020 PRINT"[155]9. DAGGER" 2030 PRINT"10. TRIDENT" 2040 PRINT"" 2050 INPUT"SELECT TWO";W,Y 2060 IF W<1 OR Y<1THEN 2050 2070 IFW>10ORY>10THEN2050 2080 GOSUB 2250 2090 PRINT"[147][159]FINISHED CHARACTER[158]"SPC(05)" ";N$ 2100 IFS<18ORCH>3THEN PRINT"STRENGTH...."S:GOTO 2120 2110 PRINT"STRENGTH...."S;:PRINT"[157]";SS 2120 PRINT"INELIGENCE.."I 2130 PRINT"WISDOM......"W 2140 PRINT"DEXTERITY..."D 2150 PRINT"CONSTITUTION"C 2160 PRINT"" 2170 PRINTSPC(1)RA$;:PRINT" ";:PRINTTY$ 2180 PRINT"[159]LEVEL:"SPC(08)LE 2190 PRINT"WEAPONS: ";W$;",";Y$:PRINT"[156]HIT POINTS: "HP 2200 IFCH=3THENPRINT"CONS BONUS: "(CB*LE); 2210 IFCH=3THEN PRINT(CB*(LE+1)):GOTO 1650 2220 PRINT"CONS BONUS: "(CB*LE) 2230 PRINT"N[158]EW/A[158]GAIN/P[158]RINT/W[158]EAPONS"; 2240 GOTO 1660 2250 IF W=1THENW$="LONG SWORD" 2260 IFY=1 THENY$="LONG SWORD" 2270 IF W=2 THENW$="BROAD SWORD" 2280 IF Y=2THENY$="BROAD SWORD" 2290 IFW=3THEN W$="SHORT SWORD" 2300 IF Y=3THENY$="SHORT SWORD" 2310 IFW=4THEN W$="BOW AND 50 ARROWS" 2320 IFY=4THEN Y$="BOW AND 50 ARROWS" 2330 IFW=5THEN W$="SPEAR" 2340 IFY=5THEN Y$="SPEAR" 2350 IFW=6THEN W$="JAVILIEN" 2360 IFY=6THEN Y$="JAVILIEN" 2370 IFW=7THEN W$="MACE" 2380 IFY=7THEN Y$="MACE" 2390 IFW=8THEN W$="HAMMER" 2400 IFY=8THEN Y$="HAMMER" 2410 IFW=9THEN W$="DAGGER" 2420 IFY=9THEN Y$="DAGGER" 2430 IFY=10THENY$="TRIDENT" 2440 IFW=10THEN W$="TRIDENT" 2450 GOTO 2090 2460 RETURN 2470 PRINT"[147]TABLE FOR PALADINS WEAPONS: " 2480 PRINT"1. LONG SWORD" 2490 PRINT"2. BROAD SWORD" 2500 PRINT"3. SHORT SWORD" 2510 PRINT"[156]4. BOW AND 50 ARROWS" 2520 PRINT"5. SPEAR" 2530 PRINT"[158]6. JAVILIEN" 2540 PRINT"[153]7. MACE" 2550 PRINT"[154]8. HAMMER" 2560 PRINT"[155]9. DAGGER" 2570 PRINT"10. TRIDENT" 2580 PRINT"" 2590 INPUT"SELECT TWO";W,Y 2600 IF W<1 OR Y<1THEN 2050 2610 IFW>10ORY>10THEN2050 2620 GOTO 2250